This invention relates to communication data switching and more particularly relates to such switching employing data organized in frames.
In the field of telecommunications, there are a number of standard frame formats which are built from successive combinations of fundamental 64 KBit/sec. channels. Each channel is represented as 8 bits transmitted every 125 microseconds (uS) (also referred to as a DS0 channel or an E0 channel). One such format is SONET (Synchronous Optical Network) which creates 125 uS frames containing Virtual Tributaries (VTs). The size of the VTs depends on the underlying payload being transported within a SONET frame. VT sizes include VT1.5, VT2, VT3 and VT6.
Of particular interest are the VT1.5 and VT2. The VT1.5 contains a total of 27 bytes of 8 bits per 125 uS frame and was sized to accommodate a DS1 payload. A DS1 is a standard format comprised of 193 bits per 125 uS framexe2x80x94192 bits representing twenty-four DS0s and 1 overhead bit. Twenty-eight VT1.5s can be placed within a SONET STS-1 Synchronous Payload Envelope (SPE), the payload part of a SONET STS-1 transport frame. The VT2 contains a total of 36 bytes of 8 bits per 125 uS frame and was sized to accommodate an E1 payload. An E1 has 256 bits per 125 uS framexe2x80x94240 bits representing thirty E0s and 16 overhead bits. Twenty-one VT2s can fit in an SONET STS-1 SPE. The STS-1 SPE is segmented into 7 VT Groups. Each VT Group can contain 4 VT1.5s or 3 VT2s.
Manipulation of traffic contained within a SONET STS-n SPE requires the ability to interchange VTs from one SONET stream to another. Switch fabrics exist which are optimized based on the level of hierarchy they need to operate. To be a totally non-blocking VT-level switch, it must be true that any incoming VT position in a SONET frame can be mapped to any same-sized free VT position in an outgoing SONET frame. This requires both time and space manipulation by the switch fabric. Typical switch network architectures to perform these functions are known to be realized by cascading time and space switch elements. One known example of this type of architecture is the T-S-T architecture, where the signals pass through a total of three network stages, the first and last of which are time switched, and the middle of which is space switched. Furthermore, a different type of switch architecture using a three stage space switching network could be used to give a T-S-S-S-T type configuration.
Time switching involves re-ordering the time sequence (or VT position) of the VTs within a single SONET frame. This typically is realized by buffering the input stream such that as each output byte is required, a stable sample of the previous byte from any input timeslot (or VT position) is guaranteed to be available. In the case of a VT1.5 time switch for instance, 28 bytes of storage are required. For a VT2 time switch, 21 bytes of storage are required. A significant delay in the data path results from this input buffering with the delay being a function of the resolution required of the switch fabric (the lower the resolution, the longer the delay). Lower resolution also increases memory size and power dissipation.
Space switching is equivalent to a crossbar function where a given output""s content can be based on one of several inputs. To achieve VT level switching, the selection of the input must be dynamic such that each VT timeslot in the SONET frame can have a unique mapping. Essentially no data delay is incurred in space switching. Resolution level in a space switching element does impact memory size and power dissipation, though not to the same degree experienced by the time switch stage.
For both time and space switching, the resolution of the fabric is typically consistent, and generally is set up to handle either VT1.5 or VT2 signals. However, the STS-1 frames could contain some VT Groups carrying VT1.5s and some containing VT2s. This presents a challenge, because systems optimized for manipulating VT1.5s cannot handle VT2s efficiently. Such a system would either need to have the VT2 distributed over 2 VT1.5s, which would then be mapped together through the fabric (resulting in a 33% loss of bandwidth efficiency), or it would be necessary to switch VT Groups with VT2s at the VT Group level (with a loss in routing flexibility, as all 3 VT2s would need to stay in that VT Group as it passes through the fabric). The reverse is also true. A system optimized for VT2 switching will not be able to accommodate VT1.5 manipulation without first mapping the VT1.5s into VT2s (resulting in a 25% bandwidth efficiency loss) or again resorting to switching the VT Group containing VT1.5s intact through the fabric.
A common method of handling xe2x80x9cmixed trafficxe2x80x9d composed of VT1.5s and VT2s is to employ a DS0/E0 level switch. The fabric can manipulate VT1.5s and VT2s without any lost bandwidth efficiency. The disadvantage lies in the large increase in data delay (xcx9c125 uS per time switch stage) and memory for storing connections and data. This is due to the need to store a full 125 uS frame of data in the time switch as opposed to only one byte per VT1.5 or VT2. These issues either eliminate this approach (data delay beyond network requirements) or reduce density (large memories restrict the capacity of individual switch elements).
Other fabrics have been proposed which operate on a 100 column basis, capable of manipulating VT traffic of any size by concatenating xcx9c0.5 Mbps payload containers to form the various VT sizes. For example, see U.S. Pat. No. 5,579,310 (Heiles et al., issued Nov. 26, 1996). This frame structure, however, cannot directly support multi-rate timeslot interchange capability due to the fact that 100 is not evenly divisible by both 3 and 4 (i.e., has a least common multiple of 12). For this reason, all timeslot interchange stages in this approach have to buffer all 100 columns (timeslots), thereby causing a maximum throughput delay, regardless of whether only one type of VT traffic is being switched or not.
Another approach is described in U.S. Pat. No. 5,144,297 (Ohara, issued Sep. 1, 1992) which describes the processing of data in 36 byte increments (FIGS. 5-10). Such an approach is inefficient because four STS-1 frames need to be stored before all 36 bytes of the processing increment are available. Furthermore, since overhead is added to each of the 36 byte increments, the ratio of overhead to usable payload data is less efficient, and the processing required to manipulate the overhead is significantly more involved than structures proposed herein, where the overhead is shared among several VTs equivalents interleaved to form an STS-1 SPE equivalent structure.
A conventional STS-1 SPE (Synchronous Payload Envelope) is shown in FIG. 1 which demonstrates the SPE structure of an STS-1 signal as specified in GR-253-CORE. The SPE structure is composed of 87 columns of 8-bit bytes, of which one column carries the SPE Path Overhead, and two columns are Fixed Stuff columns. This leaves 84 columns remaining for Payload Area, which is sized to carry:
(a) 7 VT1.5 Groups (28 total VT1.5 signals per SPE), or
(b) 7 VT2 Groups (21 total VT2 signals per SPE), or
(c) 7 VT3 Groups (14 total VT3 signals per SPE), or
(d) 7 VT6 Groups (7 total VT6 signals per SPE), or
(e) 7 Mixed VT Groups (2 VT1.5, 2 VT2, 2 VT3, and 1 VT6 Group per SPE, for example), or
(f) 1 DS3 signal per SPE.
The STS-1 SPE pointer is carried in the STS transport overhead, and thus is not included as part of the SPE data structure.
The order of transmission of the SPE signals is serial, starting at the top-left corner, proceeding in the direction of x (across the row), then down the column y to the next row, continuing until all bytes have been transmitted. The most significant bit (MSB) of the byte is the leftmost bit (first to be transmitted), whereas the least significant bit (LSB) is the rightmost bit (last to be transmitted).
Conventional VT Frames and Superframes are shown in FIG. 2 which demonstrates the VT Frame and Superframe structures for the various VT sizes as specified in GR-253-CORE. The VT Frame structure for a particular VT size is composed of a column of 8-bit bytes, where the first byte is specified as the VT Pointer Byte, and may contain V1, V2, V3, or V4, and the remaining bytes are the Payload Area, whose number of bytes is specified based on payload size:
(a) 26 payload bytes per VT frame for a VT1.5 signal.
(b) 35 payload bytes per VT frame for a VT2 signal.
(c) 53 payload bytes per VT frame for a VT3 signal.
(d) 107 payload bytes per VT frame for a VT6 signal.
The order of transmission of the VT signals is serial, starting at the top-left corner, proceeding in the direction of x (across the row), then down the column y to the next row, continuing until all bytes have been transmitted. The most significant bit (MSB) of the byte is the leftmost bit (first to be transmitted), whereas the least significant bit (LSB) is the rightmost bit (last to be transmitted).
Four consecutive VT Frames are needed to identify the VT Pointer Bytes V1, V2, V3 and V4 so as to form a complete VT pointer. Therefore, four consecutive VT Frames are assembled to form a VT Superframe. The four VT Frames contained within the Superframe are specified by the VT Pointer Bytes V1, V2, V3, and V4, and are organized such that the VT pointer Byte V1 is at the start of the Superframe, followed by the Payload Area for that VT frame, followed by the VT Pointer Byte V2, etc.
The preferred embodiment of the invention is useful for switching communication signals that are received as predetermined data frame structures carrying a plurality of data collections comprising different numbers of collection bytes. In such an environment, the preferred embodiment converts the input data frame structure into a predetermined frame format comprising a number of frame format bytes arranged in a predetermined number of rows and a predetermined number of columns carrying at least the data collections. The number of rows is a multiple of a number evenly divisible into the different numbers of collection bytes. The data collections are switched while storing a predetermined number of bytes less than the number of frame format bytes at any one time in order to generate switched data. Switching is preferably accomplished with a time-space switch. The switched data is converted to the predetermined data frame structure, preferably by an output interface.
The foregoing switching techniques offer a number of advantages. For example, they can manipulate all VT traffic sizes specified by GR-253-CORE. The techniques provide high efficiency and bandwidth use, and time switch data delays of much less than 125 microseconds. In addition, by using the foregoing techniques, time switch network stages are optimized such that the throughput delay incurred in traversing these stages is reduced to a minimum based on the particular traffic passing through that stage. The techniques reduce the throughput delay for certain signal types in comparison to the time switch buffer delays incurred in conventional VT 1.5-VT 2 capable switches or DS0-E0 level solutions. As a result, the techniques enable improved mixed VT traffic switching.